查看原文
其他

秋招“笔试经”第六弹:华为硬件逻辑岗

相量子 达尔闻说 2021-01-17

不想错过我的推送,记得右上角-查看公众号-设为星标,摘下星星送给我!

近期,相量子老师针对华为的硬件逻辑岗的试题,帮助大家扩展了许多硬件逻辑的知识点。所以我们解析的这些题,不仅仅是针对华为的硬件逻辑岗,其他大厂的相同岗位也一并适用。

备注:目前笔试经固定在每周二更新,最近阶段集中为大家解析华为的各种题目,如果大家有其他需求,可以进入秋招求职群,添加妮姐微信:459888529,注明:秋招

今天让我们来一下上次文末留下题目的解析,并在本文的文末再送上四道题目。

9、寄存器的Tsu(建立时间)是如何定义的(   )。(华为硬件逻辑实习岗)
A  在时钟沿到来之后数据保持稳定的时间
B  在时钟沿带来前后数据都需要保持稳定的时间
C  在整个时钟周期数据保持稳定的时间
D  在时钟沿到来之前数据保持稳定的时间
解析:考察数字电路中对时序分析基本概念的认识
本题是个概念性的问题,常常在时序分析中提到。
建立时间(Set Up Time,简写为Tsu或Ts):是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间。
建立时间的门限(为了和建立时间区别开,所以简写为T_setup):时钟沿来到之前数据必须保持稳定的最小时间,芯片选定即决定,和制作工艺有关。
保持时间(Hold Time,简写为Th):是指在触发器的时钟信号上升沿到来以后,数据稳定不变的时间,如果保持时间不够,数据同样不能被稳定的打入触发器,Th就是指这个最小的保持时间。
保持时间的门限(为了和保持时间区别开,所以简写为T_hold):时钟沿来到之后数据必须保持稳定的最小时间,芯片选定即决定,和制作工艺有关。

如果我们想让系统中的时钟沿能够正确的采集到数据,那么需要建立时间的余量/裕量(Setup Slack,简写为Sslack) = 建立时间(Ts) - 建立时间的门限(T_setup) ≥ 0且保持时间的余量/裕量(Hold Slack,简写为Hslack) = 保持时间(Th) - 保持时间的门限(T_hold) ≥ 0,采集到的数据最准确的地方就是在满足建立保持时间的情况下时钟沿采集到数据的中间位置。

了解这些基本的概念后可以更方便以后在讲解时序分析相关题目时快速理解。
综上所述,答案选择D
10、关于同步设计,说法错误的是(   )。(华为硬件逻辑实习岗)

A  在可编程逻辑器件中,使用同步电路可以避免器件受温度,电压,工艺的影响,易于消除电路的毛刺,使设计更可靠,单板更稳定

B  为保证逻辑设计可靠,必须保证整个电路中只有一个时钟域,同时只使用同一个时钟沿

C  同步电路比较容易使用寄存器异步复位/置位端,以使整个电路有一个确定的初始状态

解析:考察数字电路中对同步时序电路的理解
首先我们先了解一下同步电路和异步电路的区别。
同步电路是由时序电路(寄存器和各种触发器)和组合逻辑电路构成的电路,其所有操作都是在严格的时钟控制下完成的。这些时序电路共享同一个时钟CLK,而所有的状态变化都是在时钟的上升沿(或下降沿)完成的。比如D触发器,当上升沿到来时,寄存器把D端的电平传到Q输出端。
异步电路主要是组合逻辑电路,用于产生地址译码器、FIFO或RAM的读写控制信号脉冲,但它同时也用在时序电路中,此时它没有统一的时钟,状态变化的时刻是不稳定的,通常输入信号只在电路处于稳定状态时才发生变化。也就是说一个时刻允许一个输入发生变化,以避免输入信号之间造成的竞争冒险。电路的稳定需要有可靠的建立时间和维持时间,待下面介绍。
电路设计可分类为同步电路设计和异步电路设计。同步电路设计利用时钟脉冲使其子系统同步运作,而异步电路设计不使用时钟脉冲做同步,其子系统是使用特殊的“开始”和“完成”信号(握手信号)使之同步。由于异步电路具有:无时钟偏移(Skew)问题、低电源消耗、平均效能而非最差效能、模块性、可组合和可复用性等优点,因此近年来对异步电路研究增加快速,论文发表数以倍增,而Intel Pentium 4处理器设计,也开始采用异步电路设计。当然异步电路设计也有很多缺点:由于增加了控制和用于DFT的电路,异步电路的面积开销可能高达同步设计的的两倍。而且由于缺乏专用于异步设计的商用EDA工具,而现在芯片设计的复杂度又越来越高,EDA工具对芯片设计来说是不可替代的,因此这一点也是我们对异步电路的实用性诟病最多的地方。
在同步电路设计中一般采用D触发器,异步电路设计中一般采用Latch。所以这也是为什么我们常常会听到有人说在FPGA设计中要尽量避免产生Latch的原因。
再给大家说一个常见的误区,很多人都以为在同步电路的设计中一定不可以有异步电路的存在,异步电路的设计中也不可以有同步电路的存在,其实这都是不对的。同步电路设计一定是整个电路是全局同步的设计,局部异步的设计;同样异步电路设计也一定是整个电路是全局异步的设计,局部同步的设计。
A选项同步电路确实可以很好的消除电路的毛刺。

 

B选项首先从做题的角度来看“必须”二字说的太绝对,大家可以根据多年做题的经验总结出这种选项往往是错误的。当然我们也要给出合适的理由,多时钟域在系统的设计中是很常见的事情,虽然会在一定程度上影响逻辑设计的可靠性,但是我们可以通过合理的约束来让这种不确定性变得可以分析,告诉工具哪些路径是无需分析的,哪些时钟域之间是异步的,从而让系统更加稳定可靠。
C选项大家可能感觉稍微有点问题,同步电路使用同步复位/置位也很容易,特别在Xilinx的器件中更为常用。但C选项在“容易”前面加了个很委婉的修饰词“比较”,且也没有明显的其他错误,而题目又是单选,所以本题的最佳选项为B。
下一期我们将对下面的题目进行详细的扩展解析,大家可以提前做一下,敬请期待…… 
11、属于组合逻辑电路的是(   )。(华为硬件逻辑实习岗)
A 全加器         B 移位寄存器  
C 计数器         D 触发器
12、在下列逻辑电路中,不是组合逻辑电路的是(   )。(华为硬件逻辑实习岗)
A  编码器           B  D触发器
C  加法器           D  译码器
13、双向数据总线常采用(   )构成。(华为硬件逻辑实习岗)

A  全加器           B  三态门

C  译码器           D  数据分配器 

14、信号A、B均是4bit输入,C = A+B,请问信号C应该定义(   )bit。(华为硬件逻辑实习岗)

A  4                   B  5

C  6                   D  3 

END

目前,我们安排的是每周二更新笔试经系列,计划涵盖的公司包含:华为,京东,大疆,商汤,中兴,CVTE,AMD,海康威视,黑金,汇顶等。(会陆续补充)

关于更新时间:每周二,如果同学们诉求高,很希望看到更多的分享,我们可以加番。达尔闻 秋招“笔试经”系列:

第一弹:华为硬件逻辑岗

第二弹:海康威视硬件岗

第三弹:华为硬件逻辑岗

第四弹:华为硬件逻辑岗&通用硬件岗

第五弹:华为硬件逻辑岗和硬件通用岗

毕业设计开班啦!达尔闻秋季大事件

达尔闻携全球分销商-得捷电子(Digi-key)带来17讲毕设系列线上课程。

讲师:毕设导师,名校博士/硕士,资深工程师,知乎大神,B站Up主

课程内容:从选题、基础知识补足,毕设题目拆解教学到毕设案例分享。

时间:2019年9月-2019年12月(每周二/四)

福利:5G毕设资料/方案等,200块免费开发板等立即占座:

方式一,毕业设计-得捷 交流qq群:657307701

方式二,添加妮姐微信:459888529,备注毕设即可进群


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存